#ifndef BSP_USART2_H
#define BSP_USART2_H

#include "bsp.h"

// 串口接收缓冲区配置（可根据需求调整大小）
#define UART1_RX_BUF_SIZE 128 // 接收缓冲区大小
#define UART1_TX_BUF_SIZE 128 // 发送缓冲区大小

// 串口句柄（外部可调用）
extern UART_HandleTypeDef huart1;

// 接收数据结构体（包含缓冲区和标志位）
typedef struct
{
    uint8_t rx_buf[UART1_RX_BUF_SIZE]; // 接收缓冲区
    uint16_t rx_len;                   // 接收数据长度
    uint8_t rx_flag;                   // 接收完成标志（1：接收完成）
} uart1_dev_t;

extern uart1_dev_t uart1_dev;

void uart1_send_byte(uint8_t *data, uint8_t len);
void bsp_usart2_init(uint32_t baudrate);

#endif
